package com.geezdata.cps.sdk3rd.miya.request;

import java.util.Map;

import org.hibernate.validator.constraints.NotBlank;

import com.geezdata.cps.base.request.BaseRequest;
import com.geezdata.cps.sdk3rd.miya.response.MiyaResult;

public abstract class MiyaRequest<T extends MiyaResult> extends BaseRequest {
	@NotBlank(message = "methodName 不能为空！")
	protected String methodName = null;

	@NotBlank(message = "vendorKey 不能为空！")
	protected String vendorKey;
	
	@NotBlank(message = "timestamp 不能为空！")
	protected String timestamp;
    
	@NotBlank(message = "secretKey 不能为空！")
	protected String secretKey;

    public String getMethodName() {
        return methodName;
    }

    public void setMethodName(String methodName) {
        this.methodName = methodName;
    }
    
    public String getVendorKey() {
        return vendorKey;
    }

    public void setVendorKey(String vendorKey) {
        this.vendorKey = vendorKey;
    }
    
    public String getTimestamp() {
        return timestamp;
    }

    public void setTimestamp(String timestamp) {
        this.timestamp = timestamp;
    }

    public String getSecretKey() {
        return secretKey;
    }

    public void setSecretKey(String secretKey) {
        this.secretKey = secretKey;
    }  
    
    public abstract Map<String, Object> getAppParams();
    public abstract Class<T> getResponseClass();
}
